class Solution {
public:
    int minSubArrayLen(int target, vector<int>& nums) {
        int sum=0,min_lenth=INT_MAX;//sum为[left,right]的总和，min_lenth是[left,right]的元素个数
        for(int right=0,left=0;right<nums.size();right++)//双指针
        {
            sum+=nums[right];//进窗口
            if(sum>=target){//出窗口
                while(sum>=target){
                    min_lenth=min(min_lenth,right-left+1);//更新结果
                    sum-=nums[left];
                    left++;
                }
            }
        }
        return min_lenth==INT_MAX?0:min_lenth;
    }
};